From f55096fc74687f20cc6c15b88677436f12b500de Mon Sep 17 00:00:00 2001 From: Richard Hult Date: Sat, 16 Jun 2007 15:38:33 +0000 Subject: [PATCH] Don't set parent/child relationship for tooltip windows since that moves 2007-06-16 Richard Hult * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_transient_for): Don't set parent/child relationship for tooltip windows since that moves the parent window to the front, due to the tooltip having a high window level. svn path=/trunk/; revision=18158 --- ChangeLog | 7 +++++++ gdk/quartz/gdkwindow-quartz.c | 13 +++++++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index d7383cda57..58afdf812e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2007-06-16 Richard Hult + + * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_transient_for): + Don't set parent/child relationship for tooltip windows since that + moves the parent window to the front, due to the tooltip having a + high window level. + 2007-06-16 Christian Persch * gtk/gtkbuilder.c: (gtk_builder_real_get_type_from_name), diff --git a/gdk/quartz/gdkwindow-quartz.c b/gdk/quartz/gdkwindow-quartz.c index e7c066a02c..5329ff0cf1 100644 --- a/gdk/quartz/gdkwindow-quartz.c +++ b/gdk/quartz/gdkwindow-quartz.c @@ -1576,8 +1576,17 @@ gdk_window_set_transient_for (GdkWindow *window, /* We save the parent because it needs to be unset/reset when * hiding and showing the window. */ - window_impl->transient_for = g_object_ref (parent); - [parent_impl->toplevel addChildWindow:window_impl->toplevel ordered:NSWindowAbove]; + + /* We don't set transients for tooltips, they are already + * handled by the window level being the top one. If we do, then + * the parent window will be brought to the top just because the + * tooltip is, which is not what we want. + */ + if (gdk_window_get_type_hint (window) != GDK_WINDOW_TYPE_HINT_TOOLTIP) + { + window_impl->transient_for = g_object_ref (parent); + [parent_impl->toplevel addChildWindow:window_impl->toplevel ordered:NSWindowAbove]; + } } GDK_QUARTZ_RELEASE_POOL; -- 2.30.2